package net.ojbk.timeSpace.test.service;

import java.util.List;

import net.ojbk.timeSpace.test.beans.InfoAxisBlade;
import net.ojbk.timeSpace.test.beans.TimeAxis;
import net.ojbk.timeSpace.test.beans.TimeBlade;

public interface IAxisService {

	// ==========获取信息部分
	/**
	 * 简介：获取 所有的时光轴，一个轴对应一个团队
	 * 
	 * @return 所有的axis的list集合
	 */
	public List<TimeAxis> getAllAxis(); 

	/**
	 * 简介：通过axisid获取一个时光轴对象
	 * 
	 * @param axisId
	 *            轴id
	 * @return 某个时光轴
	 */
	public TimeAxis getOneAxis(int axisId);   //OK

	public List<TimeAxis> getAllAxisByUid(String uid);
	
	/**
	 * 简介：通过axisId 获取 该时光轴下的所有叶片
	 * 
	 * @param axisId
	 *            时光轴id
	 * @return 返回所属所有叶片LIST
	 */
	public List<TimeBlade> getAllBladeByAxisId(int axisId);   //OK
	
	/**
	 * 简介：获取获取home.jsp主要需要的时光叶片的信息列表
	 * @param axisId
	 * @return
	 */
	public List<InfoAxisBlade> getAllInfoAxisBlade(int axisId);
	
	
	// ==========修改信息部分
	/**
	 * 简介：修改某轴的评论密码 要求：1、修改axis中的pw变量 2、将修改写入数据库
	 * 
	 * @param axis
	 *            时光轴对象
	 * @param newPw
	 *            新密码
	 */
	public void modifyMsgPw(TimeAxis axis, String newPw); 

	// ==========添加信息部分
	/**
	 * 简介：给一个时光轴添加一个叶子
	 * 
	 * @param axis
	 *            时光轴
	 * @param newBlade
	 *            新的叶子
	 */
	public void addTimeBlade(TimeAxis axis, TimeBlade newBlade); // OK

	// ==========信息核对部分
	/**
	 * 简介：检查你的密码是否与timeAxis密码对应
	 * 
	 * @param yourPw
	 *            你输入的评论密码
	 * @param axis
	 *            时光轴对象
	 * @return 是否密码匹配
	 */
	public Boolean checkMsgPw(String yourPw, TimeAxis axis);   //OK
}
